1. Field of the Invention
This invention relates to the load testing of web applications, and more specifically to the load testing of web applications using random parameter generation.
2. Description of Related Art
Communication of data over the Internet, or over other wide area or local area networks, to entities referred to as clients, is accomplished by a web application interconnected via a communication system to the clients. The specific resource requirements upon the web application for processing a client's request for data depend upon the nature of the data. The total load on the web application increases with the number of clients accessing the web application and, with a large number of clients, may exceed the operation capacity of the web application in terms of meeting performance goals. Such performance may be measured in transactions per second (TPS), and average response time, which are examples of client oriented performance parameters, and number of clients being served, and CPU utilization, which are examples of server oriented performance parameters.
A load test generally involves simulating the actions of relatively larger numbers of users to determine how the application or transactional server will perform under heavy loads. During the development and testing of a web-based application, the application may be loaded to assess its performance. To conduct such an assessment of a web application, systems known as load generators have been developed to simulate the load generated by clients upon the web application. Load generators may also be used to generate load to put an application under stress while troubleshooting an identified problem with the application, and for other reasons.
Often load tests need to be run during the development of a web-based application, and often to test only a portion of the application. Many prior load testing scenarios utilize user logs to generate test scripts for the loading of applications. A significant drawback of methods utilizing user logs or other tracking of past use of a web-based application is that no such logs are available for a yet unused application. Another drawback of such methods is that the tester may choose to significantly load a portion of an application for a particular reason, including troubleshooting, in a way not reflected in any user logs even if the user logs for the application do exist.